#ifndef __ACTION_H__
#define __ACTION_H__

#include "bsp_sg90.h"
#include "delay.h"
#include "dance.h"

typedef enum 
{
    NONE = 0,   // 无动作
    FORWARD,    // 前进 ('f')
    BACKWARD,   // 后退 ('b')
    SIT_DOWN,   // 坐下 ('s')
    STAND_UP,   // 站立/停止 ('u')
    LIE_DOWN,   // 趴下 ('l')
    Dance,      // 跳舞 ('d')
    Hand_SHAKE  // 握手 ('h')
} ActionCommand;

extern ActionCommand action;

// 站立姿态
void SG90_Stand_Up(void);

// 趴下姿态
void SG90_Get_Down(void);

//前进姿态
void SG90_Advance(void);

// 跳舞动作
void SG90_Dance(void);

// 后退姿态
void SG90_Backward(void);

// 握手动作
void SG90_Shake_Hand(void);

// 坐下姿态
void SG90_Sit_Down(void);



#ifdef USR_RTOS
#define delay_ms(ms) osDelay(ms)
#else
#define delay_ms(ms) HAL_Delay(ms)
#endif

#endif
